/* enum */
import { FieldTypeMappingEnum } from '@model/enum/FieldMappingEnum';

// 表单最大字段数量
export const FORM_FIELD_MAX = 100;
// 禁用逻辑显示的字段类型
export const FORM_FIELD_LOGICAL_DISABLE = ['separator'];

// 字段名称最大字数
export const FIELD_NAME_LENGTH_MAX = 100;
// 字段说明最大字数
export const FIELD_PLACEHOLER_LENGTH_MAX = 128;

// 单选选项最大数量
export const SELECT_OPTION_MAX = 3000;
// 单选项字数最大数量
export const SELECT_OPTION_LENGTH_MAX = 100;

// 信息字段最长文本限制
export const INFO_FIELD_LENGTH_MAX = 2000;

// 工单事件移动端展示最大数量
export const TASK_MOBILE_SHOW_MAX_LENGTH_MAX = 5;

// 单个表单电子签名自定义字段最大数量
export const AUTOGRAPH_MAX_LENGTH_MAX = 3;

// 富文本最大数量
export const RICHTEXT_LENGTH_MAX = 3;
// TODO:子表单支持添加最多100条数据（紧急口头任务，没有任务id）
export const SUBFORM_FIELDS_ADD_LENGTH_MAX = 100;

// 连接器自定义字段最大数量
export const CONNECTOR_FIELDS_LENGTH_MAX = 50;


// 子表单的自定义字段禁用类型
export const SUBFORM_FIELDS_DISABLED = [
  'separator',
  'info',
  'subForm',
  'subFormApi',
  'related_task',
  'autograph',
  'relatedData',
  'sparepart',
  'serviceItem',
  'pay',
  'connector',
  'materialOrder',
  'jsCodeBlock'
];

export const CONNECTOR_FIELD_FORM_TYPE = [
  FieldTypeMappingEnum.Text,
  FieldTypeMappingEnum.Textarea,
  FieldTypeMappingEnum.Number,
  FieldTypeMappingEnum.Select,
  FieldTypeMappingEnum.Cascader,
  FieldTypeMappingEnum.User,
  FieldTypeMappingEnum.Date,
  FieldTypeMappingEnum.Phone,
  FieldTypeMappingEnum.Email,
  FieldTypeMappingEnum.Address,
  FieldTypeMappingEnum.Location,
];

// 物料核销配件结算方式选项
export const MATERIAL_VERIFY_ELIMINATE_SETTLE_TYPE_OPTIONS = ['索赔', '刷卡', '现金'];
